package org.szy.plugin.sys.service;

import java.util.Set;

/**
 * 用户权限接口
 *
 * @author 孙志阳
 * @date 2023-02-27
 * @since 1.0.0
 **/
public interface SysPermissionService {


    /**
     * 通过用户唯一标识 获取角色列表
     *
     * @param userId 用户唯一标识
     * @return 角色列表
     */
    Set<String> getRoles(Object userId);

    /**
     * 通过用户唯一标识 获取菜单权限列表
     *
     * @param userId 用户唯一标识
     * @return 菜单权限列表
     */
    Set<String> getPermissions(Object userId);


    /**
     * 通过用户唯一标识 获取菜单权限列表
     *
     * @param roleCodes 角色标识，多个时以逗号隔开
     * @return 菜单权限列表
     */
    Set<String> getPermissionsByRoleCode(String roleCodes);

}
